문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 릴라(바둑 프로그램) (문단 편집) === Leela Zero === [[구글 딥마인드]]의 [[https://www.nature.com/articles/nature24270.epdf?author_access_token=VJXbVjaSHxFoctQQ4p2k4tRgN0jAjWel9jnR3ZoTv0PVW4gB86EEpGqTRDtpIz-2rmo8-KG06gqVobU5NSCFeHILHcVFUeMsbvwS-lxjqQGg98faovwjxeTUgZAUMnRQ|논문]]을 바탕으로 하여 [[알파고#s-8.5|알파고 제로]]를 재구현하기 위한 프로젝트. 스스로를 "[[오픈 소스]] [[알파고#s-8.5|알파고 제로]]"로 소개하고 있다.[* 이런 방식의 바둑 인공지능을 '''제로 계열'''이라고도 부른다.] 따라서 '''ResNet''' 구조를 가지며, 바둑의 규칙[* 규칙은 중국식으로 입력되며, 따라서 '''덤 7.5집'''의 바둑을 둔다. 제로 계열 인공지능이 대국 종반에 자기 집을 막 메우는 수를 두더라도 너무 놀라지 말 것. 그 중 대다수는 중국식에서 딱히 손해나는 짓이 아니니까 그러는 것이다.] 이외의 지식은 일절 입력하지 않고 [[강화학습]]을 진행한다. 자가대국을 MCTS 1,600 simulations(즉, 1,600 visits[* 그런데 [[알파고#s-8.6|알파제로]]의 논문에서는 숫자만 800으로 바뀌고 방식을 묘사하는 데 쓰인 표현은 똑같았는데, [[미니고]]에서는 자가대국 설정을 800 playouts로 택하고 있는 걸로 보아 이것을 visits가 아니라 playouts로 해석한 듯하다. 페이스북의 [[ELF 오픈고]] 논문에서는 rollouts라는 표현을 썼다.])의 조건에서 시행한다는 점, 어느 정도 학습이 진행된 가중치는 기존의 best-network와 시험대국 400판을 치러서 55% 이상의 승률을 거둘 때 새로운 best-network가 된다는 점 등은 논문을 통해 공개된 '''알파고 제로'''의 진행방식을 충실히 따른 것이다.[* 이 부분은 [[알파고#s-8.6|알파제로]]로 넘어가면서 또 달라졌는데, 알파제로의 진행방식은 [[미니고]]가 차용하고 있다. 미니고는 릴라 제로와는 달리 가중치가 더 나아졌는가를 시험하기 위한 검정대국은 시행하지 않고 자가대국이 일정 횟수가 차면 새 가중치 번호를 붙이는데, 이는 알파제로가 그랬기 때문이다. 릴라 제로의 기력 그래프는 버전이 오를 수록 증가하기만 하는 반면 미니고의 기력 그래프는 들쭉날쭉한 이유가 바로 이것이다.] 단, 알파고 제로 40블록에서의 40은 convolutional block 1개와 residual block 39개를 합한 것을 가리키는 수치였지만 릴라 제로에서의 40은 convolutional block은 별도로 치고 residual block의 개수만을 가리키는 것이기 때문에, 실제 구성 상으로는 릴라 제로의 블록이 1개 더 많다는 차이가 있다.[* 이 때문에 릴라 제로를 40블록(과거 버전의 경우 20블록, 15블록 등)으로 표기해오던 페이지들에서는 블록의 수까지 [[알파고#s-8.5|알파고 제로]]와 똑같이 구성한 [[미니고]]의 크기를 19블록, 39블록 등으로 표기하게 된다.[[https://github.com/breakwa11/GoAIRatings|예시]] 참고로 이와 같은 이유로 20블록인 [[ELF 오픈고|엘프고]]도 알파고 제로 20블록보다 한 블록이 더 많다.] [[https://github.com/gcp/leela-zero|GitHub]]을 통해 소스 코드를 공개하고 있다.[* 그러므로 누구든 본인에게 좋은 아이디어가 있다고 생각하면 소스 코드에 수정을 가하여 얼마든지 적용해볼 수 있다. 그러나 프로그램이 수많은 전문가들의 시행착오와 실험을 바탕으로 정해진 방식임을 고려하면, 개선을 실제로 이뤄내는 것은 절대 쉬운 일이 아님을 짐작할 수 있다.] [[알파고#s-8.5|알파고 제로]]가 자가대국을 통한 [[강화학습]] 과정에 엄청난 계산 자원을 요구하기 때문에, 릴라 제로는 분산 컴퓨팅을 사용하고 있다. 프로젝트를 시작하면서 개발자는 [[GeForce 10|GTX 1080 Ti]] 정도의 평범한(?) 가정용 컴퓨터로는 알파고 제로의 학습과정을 다 재현하는 데에 1,700년이 걸린다고 말하면서, 유저들에게 컴퓨팅 파워를 빌려줄 것을 부탁하였다. 누구든 일정 성능 이상의 [[그래픽 카드]]가 있으면 [[https://zero.sjeng.org/|이 곳]]에서 AutoGTP를 다운받아서 실행하여 프로젝트에 기여할 수 있다. AutoGTP를 통해 기부되는 연산력은 자가대국을 통한 [[강화학습]]과, 학습으로 얻어진 새 가중치의 [[검정#s-3|검정]] 과정에 쓰인다. 제로 계열 [[오픈 소스]] 바둑 인공지능의 활용에 있어서, 가중치 파일은 매우 다양한 종류가 이용되고 있으나[* ELF 오픈고, 미니고 외에도 또 대표적으로 많이 이용되는 것으로는, 기보를 입력하여 진행하는 지도학습을 통해 좀 더 인간적인 기풍을 내도록 시도한 15블록 가중치인 [[https://github.com/pangafu/LeelaMasterWeight|릴라 마스터 GX]]가 있다. '''릴라 마스터 GX'''를 학습시킬 때 입력된 기보들 중에는 인간끼리 둔 바둑의 기보도 있고 릴라 제로의 자가대국 기보도 있는데, 이 두 종류의 기보 개수의 비율을 바꿔가면서 다양한 버전을 냈다.] 엔진만큼은 릴라 제로의 것이 사용되는 경우가 아주 많다. 공개된 [[ELF 오픈고]], [[미니고]]의 가중치 파일들도 릴라 제로 엔진에서 구동하게끔 변환을 거친 다음 '''leelaz.exe'''를 이용하여 돌리게 된다. [[https://online-go.com/|OGS]]에서 활동했던 [[https://online-go.com/player/533729|RoyalLZ-ELF]]와 [[https://online-go.com/player/558144/|RoyalMinigo]]도 프로필에 '''LZ 엔진'''으로 돌린다고 명시되어 있다. 릴라 제로가 엔진까지 공개해 준 것이 제로 계열 바둑 인공지능이 널리 활용되는 데에 큰 역할을 한다는 것을 알 수 있는 대목이다. 릴라 제로 가중치 파일[* '''네트워크'''라고 지칭될 때도 있다.]의 학습은 2017년 11월에 랜덤한 착수를 하는 0번 가중치에서 출발하였다. 학습을 통해 가중치 번호가 올라가면서 2018년 1월에는 6블록으로, 같은 해 3월에 10블록, 4월에 15블록, 7월에 20블록, 9월에는 40블록으로 크기가 점차 커져 왔고,[* 하나의 가중치가 작은 블록 수로 시작하여 점점 크기가 늘어나면서 발전했다는 점도 알파고 제로와의 차이점이다. 개발자 Gian-Carlo Pascutto도 처음에는 이것을 40블록으로까지 진행할 계획은 없었다고 한다. 즉, 프로젝트를 초기 계획보다 오래 진행하게 되면서 사이즈를 늘려나가는 길을 걷게 된 것.][* 15블록의 마지막 가중치 번호는 157번, 20블록의 번호는 173번이다. 참고로 '''15블록 릴라 제로'''라고 하면 과거에는 릴라 제로 157번 가중치를 의미하였으나, 현재는 bubblesld와 bjiyxo가 157번 가중치에서 15블록 형태를 유지한 채 릴라 제로의 더 발전된 가중치(40블록)들이 남긴 자가대국 기보로 지도학습을 시켜서 얻어낸 가중치를 의미한다. 후자는 [[https://github.com/leela-zero/leela-zero/issues/2192|이 곳]]에서 찾을 수 있다. 지금은 [[https://github.com/featurecat/lizzie/releases|GitHub을 통해 배포되는 Lizzie]]에 릴라 제로 15블록이 기본적으로 세팅되어 있는데, 버전이 항상 최신은 아니다. 비슷한 것이 '''20블록'''으로도 있지만 아직은 같은 20블록인 [[ELF 오픈고|엘프고]]보다 못 두므로 [[https://github.com/leela-zero/leela-zero/issues/2504|이 쪽]]은 굳이 찾을 필요가 없다.] 2019년 1월 중에는 가중치 번호가 200번대에 돌입하게 되었다. 도중에 엘프고의 기보를 이용한 지도학습이 이루어진 시기가 있다. 이 구간에서는 지도학습을 엘프고의 기보와 릴라 제로의 자가대국 기보를 일정 비율로 섞어서 진행시켰다고 한다. 이런 이유들로 인해, 릴라 제로가 걸어온 학습과정은 순수한 강화학습은 아니다. 계속 가중치의 업데이트가 되어오다가 2019년 12월 16일에 처음으로 자가대국이 50만 판이 넘게 쌓이도록 새로운 가중치를 얻지 못하는 일이 생겼다. [[https://github.com/leela-zero/leela-zero/issues/2560|관련 공지]]. 이 때 릴라 제로의 학습을 이제 종료할 때가 온 것이 아니냐는 의견이 나왔으나 4일 뒤에 새로운 가중치가 패스되면서 문제상황은 일단락되었고 학습은 2020년 3월 현재까지는 계속 이어져오고 있다. 릴라 제로 방식 하에서의, 자가대국을 통한 기력향상의 한계가 가까워졌음을 체감하게 된 사건이라 할 수 있겠다. 대국에서는 고작 수십 visits의 계산만으로도 상술한 Leela 0.11.0을 압도할 정도의 강한 기력을 가졌다. 일류 프로기사의 수준을 넘어섰으며, 이로 인해 2018년 상반기에 이르러 드디어 '''가정용 컴퓨터로도 인간 최고수를 능가하는 기력의 구현이 가능하게 되었다'''. 현재는 프로기사에게 치석 2점을 주고 덤 6.5집을 받는 형태의 접바둑[* SAI와 [[카타고]]의 논문이 공개되기 전까지는 이것이 대부분의 제로 계열 인공지능이 그나마 정상적으로 작동해주는 유일한 형태의 접바둑 방식이었다. 본래의 2점 바둑에서는 백에게 덤이 주어지지 않으므로, 이것은 정식 2점 접바둑과 정선의 사이에 해당하는 핸디캡이다. 릴라 제로는 기본적으로 덤 7.5집 규칙을 바탕으로 학습된 인공지능이고, 제로 계열에게 형세판단 능력의 큰 손실 없이 조정된 덤을 인식하게 하는 것이 어려웠기 때문에 접바둑을 할 때 이 형식을 오랫동안 택해 왔다. 릴라 제로나 엘프고 등은 치석을 3개 이상 깔면 어떤 진행도로부터도 승산을 잘 못 찾아내기 때문에 제대로 된 기력을 발휘하지 못한다. 그러나 2019년 말 현재는 바두기, [[카타고]] 등 흑 치석 3점에 백 덤 5.5집 형태의 접바둑까지도 제법 잘 소화하는 인공지능들이 여럿 나와 있다.]으로까지 승부가 가능한 정도.[* 릴라 제로를 비롯한 인공지능들은 visits 수 설정에 따라 기력이 많이 달라지지만, 어떻게 설정했을 때 이런 퍼포먼스가 가능한지까지 정확하게 알려지지는 않았다.] 그러나 [[사활]]이 완벽하지 않아 정확한 수순을 못 밟거나 돌의 생사를 착각하는 경우가 있으며, 제로 계열의 고질적인 문제점인 '''축 버그'''를 일으키면서 어이없게 판을 망치는 일도 일어난다. 릴라 제로가 이런 상황에 걸려든 경우에는 보통 계산이 진행되는 동안 승률 값이 크게 요동치는 것을 볼 수 있다.[* 가치망이 해당 장면에서는 형세를 정확히 판단하지 못한 탓에, 트리 탐색을 거치면서 비교적 정확한 값 쪽으로 옮겨가며 심하게 변동하는 것.] [[구글 딥마인드|딥마인드]]에 의하면 [[알파고#s-8.5|알파고 제로]] 40블록도 40일 간의 학습과정 끝자락에 가서는 [[축(바둑)|축 개념]]을 이해했다고 하므로, 지금도 학습을 진행 중인 릴라 제로 40블록에게도 축 문제가 해결될 희망은 있는 셈이다. ~~한참 먼 얘기지만~~ 바둑으로 활동하는 유튜버들을 통해서도 많이 만나볼 수 있다. 방송에서 진행자가 인공지능에 도전했다가 털리는 모습을 보여주기도 하고 ~~가끔은 축버그로 이겨버리기도 하고~~ 바둑대회의 중계나 고전 명국의 복기 같은 컨텐츠를 준비하여 해설을 진행하면서 주요 장면을 릴라 제로에게 분석시켜 Lizzie 화면을 통해 보여주는 등의 방식으로 활용된다. 2019년 말 현재는 [[바둑TV]]의 프로바둑 중계에서도 승률예측으로 등장한다. [[돌바람]], [[미니고]], [[ELF 오픈고|엘프고]], '''릴라 제로''' 4개 기종의 승률을 화면 한 쪽에 띄워준다. 덕분에 국면이 좀 복잡해도 채널을 틀자마자 누가 우세한지 바로 알 수 있다. 선수가 한 수 착수할 때마다 착수한 선수의 승률이 큰 폭으로 떨어지는 일이 잦아서, 인공지능과 프로기사의 수준 차이를 실시간으로 절감할 수 있다. 릴라 제로 [[GitHub]]의 [[https://github.com/leela-zero/leela-zero/issues|issues 란]]에 유저들이 궁금해할만한 여러 문의들이 올라온다. 릴라 제로 [[https://discordapp.com/invite/jNEwKBj|Discord]]도 있는데 개발자들의 논의가 종종 올라오고, 또 [[미니고]], [[카타고]] 채널도 입점(?)해 있다. 릴라 제로를 비롯한 바둑 인공지능에 대해 궁금한 점이 많을 때 들어가보면 좋은 곳들. 제로 계열 바둑 인공지능인 '''릴라 제로''', [[ELF 오픈고]], [[미니고]]는 서로 공통점이 많다. 때문에 이들의 문서에서 서로를 많이 언급하므로, 같이 참고해볼 것. 2021년 2월 15일, 릴라 제로의 프로젝트 종료를 알리는 공지가 공식 웹사이트에 개제되었다.저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기